package br.ubigroup.model;

import java.util.ArrayList;

public class Perfil {
	Contato contato;
	Seguranca seguranca;
	ArrayList<Relacao> relacoes;
	Portfolio portfolio;
	Desempenho desempenho;
	Preferencia preferencia;
	
	public Perfil() {
		this.contato = null;
		this.seguranca = null;
		this.relacoes = null;
		this.portfolio = null;
		this.desempenho = null;
		this.preferencia = null;
	}
	
	public Perfil(Contato contato, Seguranca seguranca, ArrayList<Relacao> relacoes,
			Portfolio portfolio, Desempenho desempenho, Preferencia preferencia) {
		this.contato = contato;
		this.seguranca = seguranca;		
		this.portfolio = portfolio;
		this.desempenho = desempenho;
		this.preferencia = preferencia;		
		this.relacoes = relacoes;		
	}

	public Contato getContato() {
		return contato;
	}

	public void setContato(Contato contato) {
		this.contato = contato;
	}

	public Seguranca getSeguranca() {
		return seguranca;
	}

	public void setSeguranca(Seguranca seguranca) {
		this.seguranca = seguranca;
	}

	
	public ArrayList<Relacao> getRelacoes() {
		return relacoes;
	}
	public void setRelacoes(ArrayList<Relacao> relacoes) {
		this.relacoes = relacoes;
	}
	
	public void addRelacao(Relacao relacao) {
		this.relacoes.add(relacao);
	}
	public void removeRelacao(Relacao relacao) {
		this.relacoes.remove(relacao);
	}
	
	public Portfolio getPortfolio() {
		return portfolio;
	}

	public void setPortfolio(Portfolio portfolio) {
		this.portfolio = portfolio;
	}

	public Desempenho getDesempenho() {
		return desempenho;
	}

	public void setDesempenho(Desempenho desempenho) {
		this.desempenho = desempenho;
	}

	public Preferencia getPreferencia() {
		return preferencia;
	}

	public void setPreferencia(Preferencia preferencia) {
		this.preferencia = preferencia;
	}
	
	
	public Relacao getRelacaoByContextoPerfil(Perfil p, Contexto c) {
		
		for (int i=0; i<this.getRelacoes().size(); i++ ){
			
			if ((getRelacoes().get(i).getContexto().equals(c)) && (getRelacoes().get(i).getPerfilRelacao().equals(p))) {
				return getRelacoes().get(i);
			}
			
		}
		return null;
	}
	
	
}
